home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / macros / latex209 / contrib / script / script.sty (.txt) < prev    next >
Texinfo Document  |  1993-12-05  |  22KB  |  615 lines

  1. % script.sty -- by Frank Neukam  (01 Dec 1993)
  2. % based on Leslie Lamport's report and book styles.
  3. \typeout{Document Style `script' v2.0 by Frank Neukam <01 Dec 1993>}
  4. \ifx\selectfont\undefined
  5.  \font\tensfb  =cmssbx10 scaled \magstep0
  6.  \font\elvsfb  =cmssbx10 scaled \magstephalf
  7.  \font\twlsfb  =cmssbx10 scaled \magstep1
  8.  \font\frtnsfb =cmssbx10 scaled \magstep2
  9.  \font\svtnsfb =cmssbx10 scaled \magstep3
  10.  \font\twtysfb =cmssbx10 scaled \magstep4
  11.  \font\twfvsfb =cmssbx10 scaled \magstep5
  12. \else
  13.  \def\tensfb{\family{\sfdefault}\series{bx}\shape{n}\size{10}{12pt}\selectfont}
  14.  \def\elvsfb{\family{\sfdefault}\series{bx}\shape{n}\size{11}{13.6pt}\selectfont}
  15.  \def\twlsfb{\family{\sfdefault}\series{bx}\shape{n}\size{12}{14.5pt}\selectfont}
  16.  \def\frtnsfb{\family{\sfdefault}\series{bx}\shape{n}\size{14}{18pt}\selectfont}
  17.  \def\svtnsfb{\family{\sfdefault}\series{bx}\shape{n}\size{17}{22pt}\selectfont}
  18.  \def\twtysfb{\family{\sfdefault}\series{bx}\shape{n}\size{20}{25pt}\selectfont}
  19.  \def\twfvsfb{\family{\sfdefault}\series{bx}\shape{n}\size{25}{30pt}\selectfont}
  20. \def\@ptsize{1}
  21. \@namedef{ds@10pt}{\def\@ptsize{0}}
  22. \@namedef{ds@11pt}{\def\@ptsize{1}}
  23. \@namedef{ds@12pt}{\def\@ptsize{2}}
  24. \newdimen\paperwidth
  25. \newdimen\paperheight
  26. \paperwidth 210mm
  27. \paperheight 297mm
  28. \@namedef{ds@DINA3}{\paperwidth=297mm \paperheight=420mm}
  29. \@namedef{ds@DINA4}{\paperwidth=210mm \paperheight=297mm}
  30. \@namedef{ds@DINA5}{\paperwidth=148.5mm \paperheight=210mm}
  31. \@namedef{ds@DINA6}{\paperwidth=105mm \paperheight=148.5mm}
  32. \@namedef{ds@DINA3l}{\paperwidth=420mm \paperheight=297mm}
  33. \@namedef{ds@DINA4l}{\paperwidth=297mm \paperheight=210mm}
  34. \@namedef{ds@DINA5l}{\paperwidth=210mm \paperheight=148.5mm}
  35. \@namedef{ds@DINA6l}{\paperwidth=148.5mm \paperheight=105mm}
  36. \def\ds@draft{\overfullrule 5pt}
  37. \def\ds@twoside{\@twosidetrue \@mparswitchtrue}
  38. \@options
  39. \input script1\@ptsize.sty\relax
  40. \normalsize
  41. \newif\if@hincl
  42. \def\headincludeon{\@hincltrue}
  43. \def\headincludeoff{\@hinclfalse}
  44. \newif\if@hsl
  45. \def\headseplineon{\@hsltrue \@hincltrue}
  46. \def\headseplineoff{\@hslfalse \@hinclfalse}
  47. \headseplineoff
  48. \newif\if@fincl
  49. \def\footincludeon{\@fincltrue}
  50. \def\footincludeoff{\@finclfalse}
  51. \newif\if@fsl
  52. \def\footseplineon{\@fsltrue \@fincltrue}
  53. \def\footseplineoff{\@fslfalse \@finclfalse}
  54. \footseplineoff
  55. \newdimen\sc@bcor
  56. \newcount\sc@div
  57. \newdimen\sc@hblk
  58. \newdimen\sc@vblk
  59. \newdimen\sc@temp
  60. \def\typearea{\@ifnextchar [{\@typearea}{\@typearea[0mm]}}
  61. \def\@typearea[#1]#2{
  62.  \normalsize
  63.  \sc@bcor #1
  64.  \sc@div=#2
  65.  \sc@hblk \paperwidth
  66.  \advance \sc@hblk by -\sc@bcor
  67.  \divide\sc@hblk by \sc@div
  68.  \oddsidemargin -1in
  69.  \evensidemargin -1in
  70.  \if@twoside
  71.   \advance\oddsidemargin by \sc@hblk
  72.   \advance\oddsidemargin by \sc@bcor
  73.   \advance\evensidemargin by 2\sc@hblk
  74.  \else
  75.   \advance\oddsidemargin by 1.5\sc@hblk
  76.   \advance\oddsidemargin by \sc@bcor
  77.   \evensidemargin\oddsidemargin
  78.  \textwidth \paperwidth
  79.  \advance\textwidth by -\sc@bcor
  80.  \advance\textwidth by -3\sc@hblk
  81.  \headheight 15pt
  82.  \headsep 1.5\baselineskip
  83.  \footskip 3.5\baselineskip
  84.  \sc@vblk \paperheight
  85.  \divide\sc@vblk by \sc@div
  86.  \sc@temp \paperheight
  87.  \advance\sc@temp by -3\sc@vblk
  88.  \if@hincl
  89.   \advance\sc@temp by -\headheight
  90.   \advance\sc@temp by -\headsep
  91.  \if@fincl
  92.   \advance\sc@temp by -\footskip
  93.  \textheight \topskip
  94.  \@whiledim\textheight<\sc@temp
  95.   \do{\advance\textheight by \baselineskip}
  96.  \topmargin \sc@vblk
  97.  \advance\topmargin by -1in
  98.  \if@hincl \else
  99.   \advance\topmargin by -\headheight
  100.   \advance\topmargin by -\headsep
  101.  \if@twoside
  102.   \marginparwidth 1.5\sc@hblk
  103.  \else
  104.   \marginparwidth \sc@hblk
  105.  \marginparsep 1cc
  106.  \marginparpush 0.45\baselineskip}
  107. \def\areaset{\@ifnextchar [{\@areaset}{\@areaset[0mm]}}
  108. \def\@areaset[#1]#2#3{
  109.  \normalsize
  110.  \sc@bcor #1
  111.  \textwidth #2
  112.  \textheight #3
  113.  \sc@hblk \paperwidth
  114.  \advance\sc@hblk by -\sc@bcor
  115.  \advance\sc@hblk by -\textwidth
  116.  \divide\sc@hblk by 3
  117.  \oddsidemargin -1in
  118.  \evensidemargin -1in
  119.  \if@twoside
  120.   \advance\oddsidemargin by \sc@hblk
  121.   \advance\oddsidemargin by \sc@bcor
  122.   \advance\evensidemargin by 2\sc@hblk
  123.  \else
  124.   \advance\oddsidemargin by 1.5\sc@hblk
  125.   \advance\oddsidemargin by \sc@bcor
  126.   \evensidemargin\oddsidemargin
  127.  \headheight 15pt
  128.  \headsep 1.5\baselineskip
  129.  \footskip 3.5\baselineskip
  130.  \sc@vblk \paperheight
  131.  \advance\sc@vblk by -\textheight
  132.  \divide\sc@vblk by 3
  133.  \if@hincl
  134.   \advance\textheight by -\headheight
  135.   \advance\textheight by -\headsep
  136.  \if@fincl
  137.   \advance\textheight by -\footskip
  138.  \topmargin \sc@vblk
  139.  \advance\topmargin by -1in
  140.  \if@hincl \else
  141.   \advance\topmargin by -\headheight
  142.   \advance\topmargin by -\headsep
  143.  \if@twoside
  144.   \marginparwidth 1.5\sc@hblk
  145.  \else
  146.   \marginparwidth \sc@hblk
  147.  \marginparsep 1cc
  148.  \marginparpush 0.45\baselineskip}
  149. \ifcase \@ptsize\relax \typearea{8} \or \typearea{10} \or \typearea{12} \fi
  150. \parskip 0pt plus 1pt
  151. \parindent 1em
  152. \partopsep 3pt plus 2pt minus 2pt
  153. \footnotesep 0.6\baselineskip
  154. \skip\footins 0.75\baselineskip plus 4pt minus 2pt
  155. \skip\@mpfootins = \skip\footins
  156. \columnsep 1cc
  157. \columnseprule 0pt
  158. \floatsep 1\baselineskip plus 2pt minus 2pt
  159. \textfloatsep 20pt plus 2pt minus 4pt
  160. \intextsep 1\baselineskip plus 2pt minus 2pt
  161. \@maxsep 20pt
  162. \dblfloatsep 1\baselineskip plus 2pt minus 2pt
  163. \dbltextfloatsep 20pt plus 2pt minus 4pt
  164. \@dblmaxsep 20pt
  165. \@fptop 0pt plus 1fil
  166. \@fpsep 0.7\baselineskip plus 2fil
  167. \@fpbot 0pt plus 1fil
  168. \@dblfptop 0pt plus 1fil
  169. \@dblfpsep 0.7\baselineskip plus 2fil
  170. \@dblfpbot 0pt plus 1fil
  171. \arraycolsep 5pt
  172. \tabcolsep 6pt
  173. \arrayrulewidth 0.4pt
  174. \doublerulesep 2pt
  175. \fboxsep 3pt
  176. \fboxrule 0.4pt
  177. \tabbingsep \labelsep
  178. \labelsep .5em
  179. \leftmargini 2.5em
  180. \leftmarginii 2.2em
  181. \leftmarginiii 1.87em
  182. \leftmarginiv 1.7em
  183. \leftmarginv 1em
  184. \leftmarginvi 1em
  185. \leftmargin\leftmargini
  186. \labelwidth\leftmargini
  187. \advance\labelwidth-\labelsep
  188. \def\@listI{\leftmargin\leftmargini
  189.  \topsep 0.8em plus 0.2em minus 0.4em
  190.  \parsep 0.4em plus 2pt minus 1pt
  191.  \itemsep \parsep}
  192. \let\@listi\@listI
  193. \@listi
  194. \def\@listii{\leftmargin\leftmarginii
  195.  \labelwidth\leftmarginii\advance\labelwidth-\labelsep
  196.  \topsep 0.4em plus 2pt minus 1pt
  197.  \parsep 0.2em plus 1pt minus 1pt
  198.  \itemsep \parsep}
  199. \def\@listiii{\leftmargin\leftmarginiii
  200.  \labelwidth\leftmarginiii\advance\labelwidth-\labelsep
  201.  \topsep 0.2em plus 1pt minus 1pt
  202.  \parsep \z@
  203.  \partopsep 1pt plus 0pt minus 1pt
  204.  \itemsep \topsep}
  205. \def\@listiv{\leftmargin\leftmarginiv
  206.  \labelwidth\leftmarginiv\advance\labelwidth-\labelsep}
  207. \def\@listv{\leftmargin\leftmarginv
  208.  \labelwidth\leftmarginv\advance\labelwidth-\labelsep}
  209. \def\@listvi{\leftmargin\leftmarginvi
  210.  \labelwidth\leftmarginvi\advance\labelwidth-\labelsep}
  211. \@lowpenalty 51
  212. \@medpenalty 151
  213. \@highpenalty 301
  214. \@beginparpenalty -\@lowpenalty
  215. \@endparpenalty -\@lowpenalty
  216. \@itempenalty -\@lowpenalty
  217. \def\theenumi{\arabic{enumi}}
  218. \def\theenumii{\alph{enumii}}
  219. \def\theenumiii{\roman{enumiii}}
  220. \def\theenumiv{\Alph{enumiv}}
  221. \def\labelenumi{\theenumi.}
  222. \def\labelenumii{\theenumii)}
  223. \def\labelenumiii{\theenumiii.}
  224. \def\labelenumiv{\theenumiv.}
  225. \def\p@enumii{\theenumi}
  226. \def\p@enumiii{\theenumi\theenumii)}
  227. \def\p@enumiv{\p@enumiii\theenumiii}
  228. \def\labelitemi{$\bullet$}
  229. \def\labelitemii{\bf --}
  230. \def\labelitemiii{$\triangleright$}
  231. \def\labelitemiv{$\cdot$}
  232. \newcounter{part}
  233. \newcounter {chapter}
  234. \newcounter {section}[chapter]
  235. \newcounter {subsection}[section]
  236. \newcounter {subsubsection}[subsection]
  237. \newcounter {paragraph}[subsubsection]
  238. \newcounter {subparagraph}[paragraph]
  239. \def\thepart {\Roman{part}}
  240. \def\thechapter {\arabic{chapter}}
  241. \def\thesection {\thechapter.\arabic{section}}
  242. \def\thesubsection {\thesection.\arabic{subsection}}
  243. \def\thesubsubsection {\thesubsection .\arabic{subsubsection}}
  244. \def\theparagraph {\thesubsubsection.\arabic{paragraph}}
  245. \def\thesubparagraph {\theparagraph.\arabic{subparagraph}}
  246. \setcounter{secnumdepth}{2}
  247. \setcounter{tocdepth}{2}
  248. \def\verse{\let\\=\@centercr
  249.  \list{}{\itemsep\z@ \itemindent -1.5em\listparindent \itemindent
  250.  \rightmargin\leftmargin\advance\leftmargin 1.5em}\item[]}
  251. \let\endverse\endlist
  252. \def\quotation{\list{}{\listparindent 1em
  253.  \itemindent\listparindent
  254.  \rightmargin\leftmargin\parsep 0pt plus 1pt}\item[]}
  255. \let\endquotation=\endlist
  256. \def\quote{\list{}{\rightmargin\leftmargin}\item[]}
  257. \let\endquote=\endlist
  258. \def\descriptionlabel#1{\hspace\labelsep \descfont #1}
  259. \def\description{\list{}{\labelwidth\z@ \itemindent-\leftmargin
  260.  \let\makelabel\descriptionlabel}}
  261. \let\enddescription\endlist
  262. \newdimen\descriptionmargin
  263. \descriptionmargin=3em
  264. \def\labelinglabel#1{#1\hfil\sc@septext}
  265. \def\labeling{\@ifnextchar [{\@labeling}{\@labeling[]}}
  266. \def\@labeling[#1]#2{\def\sc@septext{#1}
  267.  \list{}{\settowidth{\labelwidth}{#2#1}
  268.  \leftmargin\labelwidth \advance\leftmargin by \labelsep
  269.  \let\makelabel\labelinglabel}}
  270. \let\endlabeling\endlist
  271. \def\marginline#1{\marginpar%
  272.  {\if@twoside \ifodd\c@page \raggedright \else \raggedleft \fi
  273.   \else \raggedright \fi #1}}
  274. \def\titlepage{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
  275.  \else \newpage \fi \thispagestyle{empty}\c@page\z@}
  276. \def\endtitlepage{\if@restonecol\twocolumn \else \newpage \fi}
  277. \def\next@tpage{\newpage\thispagestyle{empty}\null}
  278. \def\@extratitle{}
  279. \long\def\extratitle#1{\def\@extratitle{#1}}
  280. \def\@titlehead{}
  281. \long\def\titlehead#1{\def\@titlehead{#1}}
  282. \def\@subject{}
  283. \def\subject#1{\def\@subject{#1}}
  284. \def\@publishers{}
  285. \def\publishers#1{\def\@publishers{#1}}
  286. \def\@uppertitleback{}
  287. \long\def\uppertitleback#1{\def\@uppertitleback{#1}}
  288. \def\@lowertitleback{}
  289. \long\def\lowertitleback#1{\def\@lowertitleback{#1}}
  290. \def\@dedication{}
  291. \def\dedication#1{\def\@dedication{#1}}
  292. \def\maketitle{\@ifnextchar [{\@maketitle}{\@maketitle[1]}}
  293. \def\@maketitle[#1]{\bgroup \@restonecolfalse
  294.  \if@twocolumn \@restonecoltrue\onecolumn \else \newpage \fi
  295.  \thispagestyle{empty}\null
  296.  \setcounter{page}{#1}
  297.  \let\footnotesize\small
  298.  \let\footnoterule\relax
  299.  \ifx\@extratitle\@empty \else
  300.   \noindent\@extratitle \next@tpage \if@twoside \next@tpage \fi
  301.  \ifx\@titlehead\@empty \else
  302.   \noindent\begin{minipage}[t]{\textwidth}
  303.   \@titlehead
  304.   \end{minipage}\par
  305.  \null \vfill
  306.  \ifx\@subject\@empty \else
  307.   {\centering \Large \@subject \par}
  308.   \vskip 3em
  309.  {\centering \huge \sectfont \@title \par}
  310.  \vskip 3em
  311.  {\centering \Large \lineskip 0.75em
  312.   \begin{tabular}[t]{c}\@author
  313.   \end{tabular}\par}
  314.  \vskip 1.5em
  315.  {\centering \Large \@date \par}
  316.  \vskip 0pt plus 3fill
  317.  {\centering \Large \@publishers \par}
  318.  \vskip 3em
  319.  \par \@thanks
  320.  \if@twoside \next@tpage
  321.   \noindent\begin{minipage}[t]{\textwidth}
  322.   \@uppertitleback
  323.   \end{minipage}\par
  324.   \vfill
  325.   \noindent\begin{minipage}[b]{\textwidth}
  326.   \@lowertitleback
  327.   \end{minipage}
  328.  \ifx\@dedication\@empty \else
  329.   \next@tpage \vfill
  330.   {\centering \Large \@dedication \par}
  331.   \vskip 0pt plus 3fill
  332.   \if@twoside \next@tpage \fi
  333.  \if@restonecol\twocolumn \else \newpage \fi
  334.  \egroup
  335.  \setcounter{footnote}{0}
  336.  \let\thanks\relax \gdef\@extratitle{}\gdef\@titlehead{}\gdef\@subject{}%
  337.  \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\gdef\@publishers{}%
  338.  \gdef\@uppertitleback{}\gdef\@lowertitleback{}\gdef\@dedication{}%
  339.  \let\maketitle\relax \let\@maketitle\relax}
  340. \newif\if@abstrt
  341. \def\abstracton{\@abstrttrue}
  342. \def\abstractoff{\@abstrtfalse}
  343. \def\abstractname{Abstract}
  344. \def\abstract{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
  345.  \else \newpage \fi \thispagestyle{empty} \null \vfil
  346.  \if@abstrt \begin{center} {\sectfont \abstractname} \end{center}\fi}
  347. \def\endabstract{\par \vfil \null
  348.  \if@twoside \next@tpage \fi
  349.  \if@restonecol\twocolumn \else \newpage \fi}
  350. \def\partname{Part}
  351. \def\part{\cleardoublepage \thispagestyle{empty} \if@twocolumn \onecolumn
  352.  \@tempswatrue \else \@tempswafalse \fi \null \vfil \secdef\@part\@spart}
  353. \def\@part[#1]#2{\ifnum \c@secnumdepth >-2\relax \refstepcounter{part}
  354.  \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}\else
  355.  \addcontentsline{toc}{part}{#1}\fi \markboth{}{}
  356.  {\centering \ifnum \c@secnumdepth >-2\relax \huge \sectfont\partname{}
  357.  \thepart \par \vskip 20pt \fi \Huge \sectfont #2\par}\@endpart}
  358. \def\@spart#1{{\centering \Huge \sectfont #1\par}\@endpart}
  359. \def\@endpart{\vfil\newpage \if@twoside \null \thispagestyle{empty}
  360.  \newpage \fi \if@tempswa \twocolumn \fi}
  361. \def\chaptername{Chapter}
  362. \def\@chapapp{\chaptername}
  363. \def\chaptermark#1{}
  364. \def\chapter{\clearpage \thispagestyle{plain} \global\@topnum\z@
  365.  \@afterindentfalse \secdef\@chapter\@schapter}
  366. \def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
  367.   \refstepcounter{chapter}
  368.   \typeout{\@chapapp\space\thechapter.}
  369.   \addcontentsline{toc}{chapter}{\protect \numberline{\thechapter.}#1}
  370.  \else
  371.   \addcontentsline{toc}{chapter}{#1}\fi
  372.  \chaptermark{#1}
  373.  \addtocontents{lof}{\protect\addvspace{10pt}}
  374.  \addtocontents{lot}{\protect\addvspace{10pt}}
  375.  \if@twocolumn \@topnewpage[\@makechapterhead{#2}]
  376.  \else \@makechapterhead{#2} \fi \@afterheading}
  377. \def\@schapter#1{\if@twocolumn \@topnewpage[\@makeschapterhead{#1}]
  378.  \else \@makeschapterhead{#1} \fi \@afterheading}
  379. \def\@makechapterhead#1{\vspace*{50pt} {\Huge \sectfont
  380.  \@hangfrom{\ifnum \c@secnumdepth >\m@ne \thechapter. \fi}%
  381.  {\raggedright \interlinepenalty \@M #1\par}} \nobreak \vskip 40pt}
  382. \def\@makeschapterhead#1{\vspace*{50pt} {\Huge \sectfont \@hangfrom{}%
  383.  {\raggedright \interlinepenalty \@M #1\par}} \nobreak \vskip 40pt}
  384. \def\addchap{\clearpage \thispagestyle{plain} \global\@topnum\z@
  385.  \@afterindentfalse \secdef\@addchap\@saddchap}
  386. \def\@addchap[#1]#2{\typeout{#2}
  387.  \addcontentsline{toc}{chapter}{#1}
  388.  \if@twoside \markboth{#1}{}\else \markright{#1} \fi
  389.  \addtocontents{lof}{\protect\addvspace{10pt}}
  390.  \addtocontents{lot}{\protect\addvspace{10pt}}
  391.  \if@twocolumn \@topnewpage[\@makeschapterhead{#2}]
  392.  \else \@makeschapterhead{#2} \fi \@afterheading}
  393. \def\@saddchap#1{\markboth{}{}
  394.  \if@twocolumn \@topnewpage[\@makeschapterhead{#1}]
  395.  \else \@makeschapterhead{#1} \fi \@afterheading}
  396. \def\appendixname{Appendix}
  397. \def\appendix{\par
  398.  \setcounter{chapter}{0}
  399.  \setcounter{section}{0}
  400.  \def\@chapapp{\appendixname}
  401.  \def\thechapter{\Alph{chapter}}}
  402. \def\section{\@startsection {section}{1}{\z@}{-3.5ex plus -1ex minus
  403.  -.2ex}{2.3ex plus .2ex}{\Large \sectfont}}
  404. \def\subsection{\@startsection{subsection}{2}{\z@}{-3.25ex plus -1ex minus
  405.  -.2ex}{1.5ex plus .2ex}{\large \sectfont}}
  406. \def\subsubsection{\@startsection{subsubsection}{3}{\z@}{-3.25ex plus -1ex
  407.  minus -.2ex}{1.5ex plus .2ex}{\sectfont}}
  408. \def\paragraph{\@startsection{paragraph}{4}{\z@}{3.25ex plus 1ex minus
  409.  .2ex}{-1em}{\sectfont}}
  410. \def\subparagraph{\@startsection{subparagraph}{4}{\parindent}{3.25ex plus
  411.  1ex minus .2ex}{-1em}{\sectfont}}
  412. \def\minisec#1{\@afterindentfalse \vskip 1.5ex {\parindent 0pt \raggedright
  413.  \sectfont #1\par\nobreak}\@afterheading}
  414. \def\contentsname{Contents}
  415. \def\@pnumwidth{1.55em}
  416. \def\@tocrmarg {2.55em}
  417. \def\@dotsep{4.5}
  418. \def\tableofcontents{\@restonecolfalse
  419.  \if@twocolumn\@restonecoltrue\onecolumn\fi
  420.  \chapter*{\contentsname \@mkboth{\contentsname}{\contentsname}}
  421.  \@starttoc{toc}\if@restonecol\twocolumn\fi}
  422. \def\l@part#1#2{\addpenalty{-\@highpenalty}
  423.  \addvspace{2.25em plus 1pt} \begingroup
  424.  \@tempdima 3em \parindent \z@ \rightskip \@pnumwidth \parfillskip
  425.  -\@pnumwidth
  426.  {\sectfont \leavevmode #1\hfil \hbox to\@pnumwidth{\hss #2}}\par
  427.  \nobreak \global\@nobreaktrue \everypar{\global\@nobreakfalse\everypar{}}
  428.  \endgroup}
  429. \def\l@chapter#1#2{\addpenalty{-\@highpenalty}
  430.  \vskip 1.0em plus 1pt \@tempdima 1.5em \begingroup
  431.  \parindent \z@ \rightskip \@pnumwidth
  432.  \parfillskip -\@pnumwidth
  433.  \sectfont \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip
  434.  #1\nobreak\hfil\nobreak\hbox to\@pnumwidth{\hss #2}\par
  435.  \penalty\@highpenalty \endgroup}
  436. \def\l@section{\@dottedtocline{1}{1.5em}{2.3em}}
  437. \def\l@subsection{\@dottedtocline{2}{3.8em}{3.2em}}
  438. \def\l@subsubsection{\@dottedtocline{3}{7.0em}{4.1em}}
  439. \def\l@paragraph{\@dottedtocline{4}{10em}{5em}}
  440. \def\l@subparagraph{\@dottedtocline{5}{12em}{6em}}
  441. \def\listfigurename{List of Figures}
  442. \def\listoffigures{\@restonecolfalse
  443.  \if@twocolumn\@restonecoltrue\onecolumn\fi
  444.  \chapter*{\listfigurename \@mkboth{\listfigurename}{\listfigurename}}
  445.  \@starttoc{lof}\if@restonecol\twocolumn\fi}
  446. \def\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}
  447. \def\listtablename{List of Tables}
  448. \def\listoftables{\@restonecolfalse
  449.  \if@twocolumn\@restonecoltrue\onecolumn\fi
  450.  \chapter*{\listtablename \@mkboth{\listtablename}{\listtablename}}
  451.  \@starttoc{lot}\if@restonecol\twocolumn\fi}
  452. \let\l@table\l@figure
  453. \def\bibname{Bibliography}
  454. \def\thebibliography#1{\chapter*{\bibname \@mkboth{\bibname}{\bibname}}
  455.  \list{[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}\leftmargin\labelwidth
  456.  \advance\leftmargin\labelsep
  457.  \usecounter{enumi}}
  458.  \def\newblock{\hskip 0.11em plus 0.33em minus 0.07em}
  459.  \sloppy\clubpenalty4000\widowpenalty4000
  460.  \sfcode`\.=1000\relax}
  461. \let\endthebibliography=\endlist
  462. \def\indexname{Index}
  463. \newif\if@restonecol
  464. \def\theindex{\@restonecoltrue\if@twocolumn\@restonecolfalse\fi
  465.  \columnseprule \z@
  466.  \columnsep 35pt\twocolumn[\@makeschapterhead{\indexname}]
  467.  \@mkboth{\indexname}{\indexname}
  468.  \thispagestyle{plain}\parindent\z@
  469.  \parskip\z@ plus 0.3pt\relax\let\item\@idxitem}
  470. \def\@idxitem{\par\hangindent 40pt}
  471. \def\subitem{\par\hangindent 40pt \hspace*{20pt}}
  472. \def\subsubitem{\par\hangindent 40pt \hspace*{30pt}}
  473. \def\endtheindex{\if@restonecol\onecolumn\else\clearpage\fi}
  474. \def\indexspace{\par \vskip 10pt plus 5pt minus 3pt\relax}
  475. \@addtoreset{footnote}{chapter}
  476. \def\footnoterule{\kern-3\p@
  477.  \hrule width 0.4\columnwidth
  478.  \kern 2.6\p@}
  479. \long\def\@makefntext#1{\noindent \sc@temp\columnwidth%
  480.  \advance\sc@temp by -1.5em \hbox to 1em{\hss$^{\@thefnmark}$}\hskip .5em%
  481.  \parbox[t]{\sc@temp}{\parindent 0pt\parskip 0pt\hskip -.5em #1}}
  482. \@addtoreset{equation}{chapter}
  483. \def\theequation{\thechapter.\arabic{equation}}
  484. \setcounter{topnumber}{2}
  485. \def\topfraction{.7}
  486. \setcounter{bottomnumber}{1}
  487. \def\bottomfraction{.3}
  488. \setcounter{totalnumber}{3}
  489. \def\textfraction{.2}
  490. \def\floatpagefraction{.5}
  491. \setcounter{dbltopnumber}{2}
  492. \def\dbltopfraction{.7}
  493. \def\dblfloatpagefraction{.5}
  494. \long\def\@makecaption#1#2{\vskip 10pt
  495.  \setbox\@tempboxa\hbox{\captfont #1: #2}
  496.  \ifdim \wd\@tempboxa >\hsize \@hangfrom{\captfont #1: }%
  497.  {\captfont #2\par}
  498.  \else \hbox to\hsize{\hfil\box\@tempboxa\hfil}
  499.  \fi}
  500. \def\figurename{Figure}
  501. \newcounter{figure}[chapter]
  502. \def\thefigure{\thechapter.\@arabic\c@figure}
  503. \def\fps@figure{tbp}
  504. \def\ftype@figure{1}
  505. \def\ext@figure{lof}
  506. \def\fnum@figure{\figurename{} \thefigure}
  507. \def\figure{\@float{figure}}
  508. \let\endfigure\end@float
  509. \@namedef{figure*}{\@dblfloat{figure}}
  510. \@namedef{endfigure*}{\end@dblfloat}
  511. \def\tablename{Table}
  512. \newcounter{table}[chapter]
  513. \def\thetable{\thechapter.\@arabic\c@table}
  514. \def\fps@table{tbp}
  515. \def\ftype@table{2}
  516. \def\ext@table{lot}
  517. \def\fnum@table{\tablename{} \thetable}
  518. \def\table{\@float{table}}
  519. \let\endtable\end@float
  520. \@namedef{table*}{\@dblfloat{table}}
  521. \@namedef{endtable*}{\end@dblfloat}
  522. \mark{{}{}}
  523. \if@twoside
  524.  \def\ps@plain{\let\@mkboth\@gobbletwo
  525.   \def\@evenhead{}%
  526.   \def\@oddhead{}%
  527.   \def\@evenfoot{\vbox{\hsize=\textwidth
  528.    \if@fsl \hrule \vskip 3pt \fi
  529.    \hbox to \textwidth{\pnumfont\thepage\hfil}}}%
  530.   \def\@oddfoot{\vbox{\hsize=\textwidth
  531.    \if@fsl \hrule \vskip 3pt \fi
  532.    \hbox to \textwidth{\pnumfont\hfil\thepage}}}}
  533.  \def\ps@headings{\let\@mkboth\markboth
  534.   \def\@evenhead{\vbox{\hsize=\textwidth
  535.    \hbox to \textwidth{\headfont\leftmark\hfil}
  536.    \if@hsl \vskip 1.5pt \hrule \fi}}%
  537.   \def\@oddhead{\vbox{\hsize=\textwidth
  538.    \hbox to \textwidth{\headfont\hfil\rightmark}
  539.    \if@hsl \vskip 1.5pt \hrule \fi}}%
  540.   \def\@evenfoot{\vbox{\hsize=\textwidth
  541.    \if@fsl \hrule \vskip 3pt \fi
  542.    \hbox to \textwidth{\pnumfont\thepage\hfil}}}%
  543.   \def\@oddfoot{\vbox{\hsize=\textwidth
  544.    \if@fsl \hrule \vskip 3pt \fi
  545.    \hbox to \textwidth{\pnumfont\hfil\thepage}}}%
  546.   \def\chaptermark##1{\markboth {\ifnum \c@secnumdepth >\m@ne
  547.    \thechapter. \ \fi ##1}{}}%
  548.   \def\sectionmark##1{\markright {\ifnum \c@secnumdepth >\z@
  549.    \thesection\ \ \fi ##1}}%
  550.   \def\subsectionmark##1{}}
  551.  \def\ps@myheadings{\let\@mkboth\@gobbletwo
  552.   \def\@evenhead{\vbox{\hsize=\textwidth
  553.    \hbox to \textwidth{\headfont\leftmark\hfil}
  554.    \if@hsl \vskip 1.5pt \hrule \fi}}%
  555.   \def\@oddhead{\vbox{\hsize=\textwidth
  556.    \hbox to \textwidth{\headfont\hfil\rightmark}
  557.    \if@hsl \vskip 1.5pt \hrule \fi}}%
  558.   \def\@evenfoot{\vbox{\hsize=\textwidth
  559.    \if@fsl \hrule \vskip 3pt \fi
  560.    \hbox to \textwidth{\pnumfont\thepage\hfil}}}%
  561.   \def\@oddfoot{\vbox{\hsize=\textwidth
  562.    \if@fsl \hrule \vskip 3pt \fi
  563.    \hbox to \textwidth{\pnumfont\hfil\thepage}}}%
  564.   \def\chaptermark##1{}%
  565.   \def\sectionmark##1{}%
  566.   \def\subsectionmark##1{}}
  567. \else
  568.  \def\ps@plain{\let\@mkboth\@gobbletwo
  569.   \def\@evenhead{}%
  570.   \def\@oddhead{}%
  571.   \def\@evenfoot{}%
  572.   \def\@oddfoot{\vbox{\hsize=\textwidth
  573.    \if@fsl \hrule \vskip 3pt \fi
  574.    \hbox to \textwidth{\pnumfont\hfil\thepage\hfil}}}}
  575.  \def\ps@headings{\let\@mkboth\markboth
  576.   \def\@evenhead{}%
  577.   \def\@oddhead{\vbox{\hsize=\textwidth
  578.    \hbox to \textwidth{\headfont\hfil\rightmark\hfil}
  579.    \if@hsl \vskip 1.5pt \hrule \fi}}%
  580.   \def\@evenfoot{}%
  581.   \def\@oddfoot{\vbox{\hsize=\textwidth
  582.    \if@fsl \hrule \vskip 3pt \fi
  583.    \hbox to \textwidth{\pnumfont\hfil\thepage\hfil}}}%
  584.   \def\chaptermark##1{\markright {\ifnum \c@secnumdepth >\m@ne
  585.    \thechapter. \ \fi ##1}}%
  586.   \def\sectionmark##1{}%
  587.   \def\subsectionmark##1{}}
  588.  \def\ps@myheadings{\let\@mkboth\@gobbletwo
  589.   \def\@evenhead{}%
  590.   \def\@oddhead{\vbox{\hsize=\textwidth
  591.    \hbox to \textwidth{\headfont\hfil\rightmark\hfil}
  592.    \if@hsl \vskip 1.5pt \hrule \fi}}%
  593.   \def\@evenfoot{}%
  594.   \def\@oddfoot{\vbox{\hsize=\textwidth
  595.    \if@fsl \hrule \vskip 3pt \fi
  596.    \hbox to \textwidth{\pnumfont\hfil\thepage\hfil}}}%
  597.   \def\chaptermark##1{}%
  598.   \def\sectionmark##1{}%
  599.   \def\subsectionmark##1{}}
  600. \def\today{\ifcase\month\or
  601.  January\or February\or March\or April\or May\or June\or
  602.  July\or August\or September\or October\or November\or December\fi
  603.  \space\number\day, \number\year}
  604. \@abstrttrue
  605. \ps@headings
  606. \pagenumbering{arabic}
  607. \onecolumn
  608. \if@twoside \else \raggedbottom \fi
  609. \frenchspacing
  610. \def\captfont{\rm}
  611. \def\descfont{\sfb}
  612. \def\headfont{\it}
  613. \def\pnumfont{\rm}
  614. \def\sectfont{\sfb}
  615.